package com.jason.system.service;

import com.jason.system.common.util.Pager;
import com.jason.system.entity.Tool;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author jie
 * @version 1.0
 * success come from self-discipline
 * @date 2021/3/26 20:17
 */
public interface ToolService {
  /**
   * 根据id获取工具信息
   * @param tid 工具id
   * @return Tool
   */
  Tool getToolById(Integer tid);


  /**
   * 根据Number(编号)获取工具信息
   * @param number 工具信息
   * @return Tool
   */
  Tool getToolByNumber(String number);

  /**
   * 根据工具名称模糊查找
   * @param page 页数
   * @param size 每页个数
   * @param toolName 工具名称
   * @return Pager<Tool>
   */
  Pager<Tool> getToolByName(Integer page,Integer size,String toolName);

  /**
   * 分页获取工具信息
   * @param size 页数
   * @param page 每页个数
   * @return List<Tool>
   */
  Pager<Tool> getAllTools(Integer page , Integer size);

  /**
   * 添加工具信息
   * @param tool 工具信息
   */
  void insertTool(Tool tool);

  /**
   * 修改工具信息
   * @param tool 工具信息
   */
  void updateTool(Tool tool);

  /**
   * 根据主键删除工具信息
   * @param tid 工具id
   * @return true or false
   */
  boolean deleteToolById(Integer tid);

  /**
   * 批量删除工具信息
   * @param tIds 工具id,String集合，以逗号分割
   * @return true or false
   */
  boolean deleteTools(String tIds);
}
